Repository navigation
Correct the media stage bound to connected - #704
Open
robertjamesprior wants to merge 3 commits into
Open
robertjamesprior wants to merge 3 commits into
robertjamesprior wants to merge 3 commits into
Conversation
Contributor
|
Preview deployment for your docs. Learn more about Mintlify Previews.
💡 Tip: Enable Automations to automatically generate PRs for you. |
robertjamesprior
marked this pull request as ready for review
October 15, 2026 00:23
The snippet remounted 15s after mount. The client's connect bounds run in sequence and sum to 23s, so an embedder following the example tore the frame down before the client could report which stage stalled — including media, the stage most likely to have stalled. Also correct the note about KERNEL_CONNECTION_TIMEOUT never firing once negotiation begins. The media bound stays armed past `checking` until ICE reaches `connected`, so a connect that stalls in between does report one; what never emits it is a viewer whose frames stop after it connected.
Sayan-
requested changes
Oct 19, 2026
Sayan-
left a comment
Contributor
There was a problem hiding this comment.
overal looks good. needs a deslop to conform to docs language guidance
…ance The example remounts at 35s, above the client's connect bounds, which run in sequence (transport, signaling, media) and now sum to 28s after kernel-images#472 settled the media bound at 10s. Below the budget the example reproduces the bug this page was fixing: the embedder tears the frame down before the client can name the stage that stalled. The prose around it says what the timer has to clear and why, since the timer also covers loading the frame and waking a sleeping browser. The timeout warning names `completed` alongside `connected`, which is the other way the media bound clears. The `media` row now reads "connected or completed ... covers a peer that stalls after checking", folded in from #698, which this supersedes.
This was referenced Oct 19, 2026
This branch was successfully deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Two corrections to the live view embedding guidance, plus a pass over the prose that changed.
The
mediareason row. It said the bound expires if ICE never reachedchecking. Since kernel-images#417 the client keeps the media bound armed throughconnected, so it expires only if ICE never arrives atconnectedorcompleted—completedis the other way a healthy connect can land when gathering is already done. An embedder branching onreasonwould otherwise expectmediato fire earlier than it does. This row is the one #698 carried, which this PR supersedes.The example watchdog. It remounted 15s after mount. The client's connect bounds run in sequence — transport, then signaling, then media — and sum to 28s, so an embedder following the snippet tore the frame down before the client could report which stage stalled. That is the media stage, which is the one most likely to have stalled, so the guidance was suppressing the diagnosis it was written to enable. The example now uses 35s, and the prose says why the timer needs room above the budget: it also covers loading the frame, including waking a browser that has gone to sleep.
The note claiming
KERNEL_CONNECTION_TIMEOUTstops firing once negotiation begins is corrected the same way: the media bound stays armed pastcheckinguntil ICE reachesconnectedorcompleted, so a connect stalling in between does report one. What never emits it is a viewer whose frames stop after it connected.Paired with kernel-images#472, which holds the media bound at 10s so the budget fits. Merge order doesn't matter for the docs themselves, but the two describe the same client.
Docs only, prose and one snippet constant. I didn't run
mint broken-linkson this revision becausemintisn't installed in this environment; the change touches no links and the check passed on the previous revision.Note
Low Risk
Documentation-only changes to live view embedding guidance; no runtime or API behavior changes in this repo.
Overview
Updates live view embedding docs so embedders match current client behavior for connect failures and watchdog timing.
The
mediareasonrow now says the bound expires when ICE never reachesconnectedorcompleted(including stalls afterchecking), not when it never reacheschecking.The “viewer never starts” section adds that sequential connect bounds default to 28s and watchdogs must exceed that plus frame load/wake time. The sample
setTimeoutincreases from 15s to 35s so remounts don’t happen before stage-specific timeouts fire.Prose on
KERNEL_CONNECTION_TIMEOUTis corrected: the media bound stays active until ICE is connected/completed; timeouts don’t apply to viewers that already connected then stopped rendering.Reviewed by Cursor Bugbot for commit 77bfce2. Bugbot is set up for automated code reviews on this repo. Configure here.